package endereco;

import java.io.Serializable;


import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.OneToOne;
import javax.persistence.PrimaryKeyJoinColumn;
import javax.persistence.SequenceGenerator;
import usuario.Usuario;


@Entity
@SequenceGenerator (name= "INC_ENDERECO", sequenceName = "SEQ_ENDERECO_ID")
public class Endereco implements Serializable {
	/**
	 * 
	 */
	private static final long serialVersionUID = 6254218571711376336L;
	
   // @Column(name="usuario_id", unique=true, nullable=false)
    //@GeneratedValue(generator="fk_endereco_cod_usuario")
    //@GenericGenerator(name="fk_endereco_cod_usuario", strategy="foreign", parameters=@Parameter(name="property", value="usuario"))
	@Id
	@GeneratedValue (strategy = GenerationType.AUTO, generator = "INC_ENDERECO")
	private long idEndereco;
	private String logradouro;
	private Integer numero;
	private String bairro;
	private String complemento;
	private Integer cep;
	private String cidade;
	private String estado;
	@OneToOne(mappedBy="endereco")
    @PrimaryKeyJoinColumn
    private Usuario usuario;
	
	
	

	public long getIdEndereco() {
		return idEndereco;
	}
	public void setIdEndereco(long idEndereco) {
		this.idEndereco = idEndereco;
	}
	public String getLogradouro() {
		return logradouro;
	}
	public void setLogradouro(String logradouro) {
		this.logradouro = logradouro;
	}
	public Integer getNumero() {
		return numero;
	}
	public void setNumero(Integer numero) {
		this.numero = numero;
	}
	public String getBairro() {
		return bairro;
	}
	public void setBairro(String bairro) {
		this.bairro = bairro;
	}
	public String getComplemento() {
		return complemento;
	}
	public void setComplemento(String complemento) {
		this.complemento = complemento;
	}
	public Integer getCep() {
		return cep;
	}
	public void setCep(Integer cep) {
		this.cep = cep;
	}
	public String getCidade() {
		return cidade;
	}
	public void setCidade(String cidade) {
		this.cidade = cidade;
	}
	public String getEstado() {
		return estado;
	}
	public void setEstado(String estado) {
		this.estado = estado;
	}
	public Usuario getUsuario() {
		return usuario;
	}
	public void setUsuario(Usuario usuario) {
		this.usuario = usuario;
	}
	
	

}
